/*
 *Description:
 *User:laoHu
 *Created with Intellij IDEA 2025
 *Data:2025.06.23
 *Time:14:21
 */

import Demo1.AdminUser;
import Demo1.NormalUser;
import Demo1.Person;
import Demo2.Booklist;
import java.util.Scanner;

public class Main{
    public static Person login(){
        //选择身份
        System.out.println("请选择你的身份：> 1.管理员  2.普通用户");
        System.out.print("请输入：> ");
        Scanner scanner = new Scanner(System.in);
        int choice = scanner.nextInt();

        //返回类型
        if(choice == 1) return new AdminUser("zansang",22);
        else return new NormalUser("lisi",33);

    }
    public static void main(String[] args) {
        //1. //加载书架:有书架和书籍才可以操作，先实例一个书架
        Booklist booklist = new Booklist();
        //2.加载用户选择，通过返回值确定用户类型
        Person person =  login();//接收返回值
        while(true) {
            //3.实现选择功能，不同用户有不同的选择，根据login返回类型确定
            int choice = person.menu();
            if(choice < 0 || choice > booklist.getBook().length){
                System.out.println("非法输入，请重新输入！！！");
            }else {
                //通过person引用使用iFuntions这个引用数组下标为choice的类
                //调用其中的work方法
                person.iFuntions[choice].work(booklist);
            }
        }
    }
}